package com.dlc.shop.bean.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 *
 *
 * @author Citrus
 * @date 2022-05-25 15:45:45
 */
@Data
@TableName("tz_refund_info")
public class RefundInfo implements Serializable{
    private static final long serialVersionUID = 1L;

    @TableId
    @Schema(description = "退款单号" )
    private String refundId;

    @Schema(description = "创建时间" )
    private Date createTime;

    @Schema(description = "更新时间" )
    private Date updateTime;
    @Schema(description = "关联的支付订单id" )
    private String orderNumber;
    @Schema(description = "关联的支付单id" )
    private String payNo;
    @Schema(description = "微信支付宝关联的退款id" )
    private String payRefundId;
    @Schema(description = "用户id" )
    private String userId;
    @Schema(description = "退款状态" )
    private Integer refundStatus;
    @Schema(description = "退款金额" )
    private Double refundAmount;
    @Schema(description = "支付方式" )
    private Integer payType;
    @Schema(description = "回调内容" )
    private String callbackContent;
    @Schema(description = "回调时间" )
    private Date callbackTime;

    @Schema(description = "退款类型 1重复支付退款 2用户申请退款" )
    private Integer refundType;

    @Schema(description = "请求退款汇付的时间" )
    private String reqDate;

    @Schema(description = "支付系统类型(0:原生支付, 1:通联支付)")
    @TableField(exist = false)
    private Integer paySysType;

    @Schema(description = "退款库存的键列表")
    @TableField(exist = false)
    private List<String> stockKeys;
}
